Now that computer use has become global, it is a technical challenge to provide speakers and readers of various languages with hardware and software adapted for use in their native languages and written character sets. Modern (e.g., personal) computing systems and other electronic, information and communication devices typically include a processor, storage apparatus, and input/output apparatus through which the user of a device interacts to input or enter information into the device, and with which the device displays or outputs information back to the user.
One input apparatus is a keyboard, which generally includes a plurality of keys or buttons corresponding to the letters of an alphabet and other common numerals or characters. In the United States and most other countries, computer systems including an English-based keyboard with the letters of the English alphabet and the decimal numbers and other punctuation characters are available, and many major manufacturers of computing equipment produce products in English or Roman-based character sets only. Furthermore, most computer software and system and application programs are also created today with English speakers primarily or only in mind.
However, for users in locations where the local language is not based on the same Roman character set as English, this requires adaptation of the keyboard, altering the user operation of the keyboard, customizing the system and application software, or all of the foregoing, to allow entry of information into the computer in the local native language. In many areas of the world, native keyboards and system and application software does not exist or is cumbersome to learn and use or is inadequate to provide natural and easy means for input and output of information to the computer in the native format or character set.
One way non-Roman character users have adapted to the use of Roman based computing infrastructures is by way of transliteration. Transliteration is a process used to transcribe text written in a character set into another character set. Transliteration allows users of computers or other electronic devices to express themselves in a language that is difficult to input into Roman-based computing systems for a number of reasons, including for example: the keyboard may not include the characters of the language; even if the keyboard includes the native language's characters, a user may not be familiar with the keyboard layout; and a user may not be fluent in the language, but knows the transliteration of certain names or phrases.
There still exists a need for better systems and techniques for transliteration between languages with different character sets. This includes in the apparatus for transliteration and underlying methods, as well as improvements in all ways of interacting with the transliteration system, including its user interface and architecture and design.